保护 Windows 启动过程

您所在的位置:网站首页 microsoft edge导致桌面黑屏 保护 Windows 启动过程

保护 Windows 启动过程

#保护 Windows 启动过程| 来源: 网络整理| 查看: 265

保护 Windows 启动过程 项目 06/08/2023 适用于: ✅ Windows 11, ✅ Windows 10

Windows 具有许多功能来帮助保护你免受恶意软件的侵害,并且它非常出色。 除了企业在内部开发和使用的应用之外,所有 Microsoft Store 应用都必须满足一系列要求,才能获得认证并被纳入到 Microsoft Store 中。 此认证过程将检查包括安全性在内的一些标准,并且是防止恶意软件进入 Microsoft Store 的有效方式。 即使恶意应用确实通过,Windows 也包括一系列可以缓解影响的安全功能。 例如,Microsoft Store 应用是沙盒式应用,并且缺少访问用户数据或更改系统设置所需的权限。

Windows 对桌面应用和数据也具有多个级别的保护。 Windows Defender防病毒使用云支持的实时检测来识别和隔离已知恶意的应用。 Windows Defender SmartScreen 会在允许用户运行不受信任的应用之前发出警告,即使该应用被识别为恶意软件也是如此。 在应用更改系统设置之前,用户必须使用用户帐户控制来授予应用管理权限。

这些组件只是 Windows 保护你免受恶意软件攻击的一些方法。 但是,这些安全功能仅在 Windows 启动后才能保护你。 新式恶意软件(特别是引导工具包)能够在 Windows 之前启动,完全绕过 OS 安全性,并保持隐藏状态。

当你在电脑或任何支持统一可扩展固件接口 (UEFI) 的电脑上运行Windows 10或Windows 11时,受信任启动会从打开电脑的那一刻起保护你的电脑免受恶意软件的侵害,直到反恶意软件启动。 在不太可能的情况下,恶意软件会感染电脑,它不能保持隐藏状态:受信任的启动可以证明系统对基础结构的完整性,而恶意软件无法伪装。 即使在没有 UEFI 的电脑上,Windows 也比以前版本的 Windows 提供更好的启动安全性。

首先,让我们看看什么是 rootkit 及其工作原理。 然后,我们将向你展示 Windows 如何保护你。

威胁:rootkit

Rootkit 是 一种复杂且危险的恶意软件。 它们在内核模式下运行,使用与 OS 相同的权限。 由于 rootkit 与 OS 具有相同的权限并在其之前启动,因此它们可以完全隐藏自身和其他应用程序。 通常,rootkit 是整套恶意软件的一部分,可以绕过本地登录、记录密码和按键、传输私有文件以及捕获加密数据。

不同类型的 rootkit 在启动过程的不同阶段中进行加载:

固件 rootkit。 这些工具包覆盖电脑的基本输入/输出系统或其他硬件的固件,因此 rootkit 可以在 Windows 之前启动。 Bootkit。 这些工具包取代了操作系统的启动加载程序, (启动 OS) 以便电脑在 OS 之前加载引导工具包的小型软件。 内核 rootkit。 这些工具包替换了 OS 内核的一部分,因此在 OS 加载时,rootkit 可以自动启动。 驱动程序 rootkit。 这些套件假装成 Windows 与电脑硬件进行通信所使用的其中一款受信任的驱动程序。 对策

Windows 支持四项功能,可帮助防止在启动过程中加载 rootkit 和引导工具包:

安全启动。 可以将具有 UEFI 固件和受信任的平台模块 (TPM) 的电脑配置为仅加载受信任的 OS 启动加载程序。 受信任启动。 Windows 先检查启动过程的每个组件的完整性,然后再加载组件。 开机初期启动的反恶意软件 (ELAM)。 ELAM 先测试所有驱动程序然后再进行加载,并且会阻止加载未经批准的驱动程序。 测量的启动。 电脑的固件记录启动过程,Windows 可以将它发送到可客观评估电脑运行状况的受信任服务器。

图 1 显示了 Windows 启动过程。

图 1. 安全启动、受信任启动和测量的启动功能可在每个阶段阻止恶意软件:

安全启动和测量的启动只能在具有 UEFI 2.3.1 和 TPM 芯片的电脑上进行。 幸运的是,满足 Windows 硬件兼容性计划要求的所有Windows 10和Windows 11电脑都具有这些组件,许多为早期版本的 Windows 设计的电脑也具有这些组件。

以下部分介绍了安全启动、受信任启动、ELAM 和测量的启动。

安全启动

当电脑启动时,它会首先找到 OS 引导加载程序。 没有安全启动的电脑在电脑硬盘驱动器上运行任何启动加载程序。 电脑无法判断它是受信任的 OS 还是根工具包。

配备有 UEFI 的电脑启动时,电脑首先验证固件是否经过了数字签名,从而减少了固件 rootkit 风险。 如果启用了安全启动,固件将检查引导加载程序的数字签名,以验证它是否未被修改。 如果启动加载程序未被改动,则只有满足以下条件之一时,固件才会启动此启动加载程序:

使用受信任证书对启动加载程序进行了签名。 对于经过 Windows 认证的电脑,Microsoft 证书受信任。 用户已手动批准启动加载程序的数字签名。 此操作允许用户加载非 Microsoft 操作系统。

所有基于 x86 的 Windows 电脑认证都必须满足与安全启动相关的几个要求:

默认情况下,它们必须启用安全启动。 他们必须信任 Microsoft 的证书 (因此任何引导加载程序 Microsoft 都已) 签名。 它们必须允许用户将安全启动配置为信任其他启动加载程序。 它们必须允许用户彻底禁用安全启动。

这些要求有助于保护你免受 rootkit 的防护,同时允许你运行所需的任何 OS。 你可以使用以下三个选项来运行非 Microsoft 操作系统:

将 OS 与经过认证的引导加载程序配合使用。 由于所有经 Windows 认证的电脑都必须信任 Microsoft 的证书,因此 Microsoft 提供一项服务来分析和签署任何非 Microsoft 引导加载程序,以便所有经认证的 Windows 电脑都信任它。 事实上,已经有了能够加载 Linux 的开源启动加载程序。 若要开始获取证书的过程,请转到 https://partner.microsoft.com/dashboard。 将 UEFI 配置为信任自定义的启动加载程序。 所有经 Windows 认证的电脑都允许你通过向 UEFI 数据库添加签名来信任未经认证的引导加载程序,从而允许运行任何 OS,包括自制操作系统。 关闭安全启动。 所有 经 Windows 认证的 电脑都允许关闭安全启动,以便可以运行任何软件。 但是,此操作无助于保护你免受启动工具包的防护。

为了防止恶意软件滥用这些选项,用户必须将 UEFI 固件手动配置为信任未认证的启动加载程序或关闭安全启动。 软件无法更改安全启动设置。

安全启动的默认状态具有广泛的信任圈,这可能导致客户信任他们可能不需要的启动组件。 由于 Microsoft 第三方 UEFI CA 证书对所有 Linux 分发版的引导加载程序签名,所以信任 UEFI 数据库中的 Microsoft 第三方 UEFI CA 签名会增加系统的攻击面。 仅信任和启动单个 Linux 分发版的客户将信任所有分发版,远比所需的配置要高得多。 任何启动加载程序中的漏洞都会公开系统,并让客户面临他们从未打算使用的引导加载程序被攻击的风险,如最近的漏洞所示,例如 GRUB 引导加载程序 或 固件级 rootkit 会影响启动组件。 默认情况下,安全核心电脑 需要启用安全启动并配置为不信任 Microsoft 第三方 UEFI CA 签名,以便为客户提供最安全的电脑配置。

若要信任和启动操作系统(如 Linux)以及由 UEFI 签名的组件,可以在 BIOS 菜单中配置安全核心电脑,以便按照以下步骤在 UEFI 数据库中添加签名:

打开固件菜单,其中之一: 启动电脑,然后按制造商的键打开菜单。 使用的常用键:Esc、Delete、F1、F2、F10、F11 或 F12。 在平板电脑上,常见按钮为“调高音量”或“调低音量”。 在启动期间,通常会有一个显示密钥的屏幕。 如果没有,或者屏幕过快而无法看到它,检查制造商的网站。 或者,如果已安装 Windows,请在“登录”屏幕或“开始”菜单中选择“电源 ( ) > 按住 Shift,同时选择”重启”。 选择“排查 > 高级选项 > UEFI 固件设置问题”。 从固件菜单中导航到“安全启动” > ,然后选择信任“第三方 CA”的选项。 保存更改并退出。

Microsoft 继续与 Linux 和 IHV 生态系统合作伙伴协作,设计最低特权功能,帮助你仅对你信任的发布者和组件保持安全和选择加入信任。

与大多数移动设备一样,基于 Arm 的设备(如 Microsoft Surface RT 设备)设计为仅Windows 8.1运行。 因此,无法关闭安全启动,并且无法加载其他 OS。 幸运的是,有一个大型市场,ARM 处理器设备设计用于运行其他操作系统。

受信任的引导

受信任的启动接管安全启动结束的位置。 启动加载程序将先验证 Windows 内核的数字签名,然后再加载它。 Windows 内核反过来验证 Windows 启动过程的其他每个组件,包括启动驱动程序、启动文件和 ELAM。 如果文件已被修改,则启动加载程序会检测到问题并拒绝加载损坏的组件。 通常,Windows 可以自动修复损坏的组件、还原 Windows 的完整性并允许电脑正常启动。

开机初期启动的反恶意软件

因为安全启动已经保护了启动加载程序,受信任启动已经保护了 Windows 内核,所以恶意软件启动的下一个机会就是感染非 Microsoft 启动驱动程序。 传统的反恶意软件应用直到加载启动驱动程序后才会启动,这让伪装成驱动程序的 rootkit 有机会工作。

开机初期启动的反恶意软件 (ELAM) 可以在所有非 Microsoft 启动驱动程序和应用程序之前加载 Microsoft 或非 Microsoft 反恶意软件驱动程序,因此可以继续形成安全启动和受信任启动所建立的任信链。 由于操作系统尚未启动,并且 Windows 需要尽快启动,ELAM 有一个简单的任务:检查每个启动驱动程序,并确定它是否在受信任的驱动程序列表中。 如果它不受信任,Windows 不会加载它。

ELAM 驱动程序不是功能齐全的反恶意软件解决方案;,稍后在启动过程中加载。 Windows) 附带Windows Defender (支持 ELAM,一些非 Microsoft 反恶意软件应用也支持 ELAM。

测量的启动

如果你组织中的电脑真的被 rootkit 感染,则你需要了解情况。 企业反恶意软件应用可以向 IT 部门报告恶意软件感染,但这不适用于隐藏其存在的 rootkit。 换句话说,你不能信任客户端告诉你它是否正常。

因此,即使正在运行反恶意软件,感染了 rootkit 的电脑看上去仍然正常。 受感染的电脑会继续连接到企业网络,使 rootkit 能够访问大量机密数据,并可能允许 rootkit 在整个内部网络中传播。

测量启动适用于 Windows 中的 TPM 和非 Microsoft 软件。 它允许网络上的受信任服务器验证 Windows 启动过程的完整性。 测量的启动使用以下过程:

电脑的 UEFI 固件在 TPM 中存储固件、启动加载程序、启动驱动程序的哈希,以及将在反恶意软件应用之前加载的所有内容。 在启动过程结束时,Windows 将启动非 Microsoft 远程证明客户端。 受信任的证明服务器会向客户端发送一个唯一密钥。 TPM 使用此唯一密钥对 UEFI 记录的日志进行数字签名。 客户端会向服务器发送日志,其中可能包含其他安全信息。

根据实现和配置,服务器现在可以确定客户端是否正常。 它可以向客户端授予对受限隔离网络或完整网络的访问权限。

图 2 说明了测量的启动和远程证明过程。

图 2. 测量的启动向远程服务器证明电脑的运行状况:

Windows 包含应用程序编程接口以支持测量启动,但你需要非 Microsoft 工具来实现远程证明客户端和受信任的证明服务器来利用它。 例如,请参阅 Microsoft Research 提供的以下工具:

TPM 平台Crypto-Provider工具包 Tss。Msr

测量启动使用 UEFI、TPM 和 Windows 的强大功能,让你能够自信地跨网络评估客户端电脑的可信度。

摘要

安全启动、受信任启动和测量的启动可创建一个从根本上抵御 bootkit 和 rootkit 的架构。 在 Windows 中,这些功能有可能消除网络中的内核级恶意软件。 使用 Windows,可以信任操作系统的完整性。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3